import {Dialog} from "@lowcode/jpaas-common-lib";

/**
 * 多语言编辑基础。
 */
export default {
    data(){
        return {
            i18nDefault:process.env.VUE_APP_LANGUAGE,
            i18nJson:{},
            i18nMenuName:""
        }
    },
    methods:{
        getI18Name(item,text){
            let name = this.$i18(item.i18nJson,'名称解析');
            name=name && name!='{"zh-CN":""}'?name:item[text];
            return name;
        },
        beforeSave(values,text){
            this.i18nJson[this.i18nDefault]=this.i18nMenuName;
            values[text]= JSON.stringify(this.i18nJson);
        },
        initI18nNameVal(values,text) {
            if(values && values[text]){
                try {
                    this.i18nJson=JSON.parse(values[text]);
                    values[text]=this.i18nJson[this.i18nDefault];
                    this.i18nMenuName=this.i18nJson[this.i18nDefault];
                }catch (e) {
                    this.i18nMenuName=values[text];
                }
            }
        },
        editI18n(text) {
            let self_ = this;
            this.i18nJson[this.i18nDefault] = this.i18nMenuName;
            let conifg = {
                curVm: this,
                widthHeight: ['800px', '600px'],
                data: {
                    i18nJson: this.i18nJson
                }
            }
            Dialog.openI18nDialog(conifg, function (action, data) {
                self_.i18nJson = data;
                self_.i18nMenuName = self_.i18nJson[self_.i18nDefault];
                let obj={};
                obj[text]=self_.i18nJson[self_.i18nDefault];
                self_.form.setFieldsValue(obj);
            })
        },
    }
}